﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Chat01
{
    // Режимы работы приложения
    public enum ConnectionRole { CRNone, CRClient, CRServer };


    class Program
    {
        static void Main(string[] args)
        {
            ConnectionRole AppRole = ConnectionRole.CRNone;
            nw_client NetClient = null;
            nw_server NetServer = null;


            Console.Write("Запустить сервер - S или клиента - C. Выйти - Q:");
            string readed = Console.ReadLine().ToUpper();

            
            char oneChar = ' ';
            if (readed.Length > 0) oneChar = readed[0];

            switch (oneChar) 
            {
                case 'S':
                    AppRole = ConnectionRole.CRServer;
                    NetServer = new nw_server();

                    break;
                case 'C':
                    AppRole = ConnectionRole.CRClient;
                    NetClient = new nw_client();
                    break;
                
                case 'Q':
                default:
                    AppRole = ConnectionRole.CRNone;
                    return;
            }

            Console.WriteLine("Программа запущена в качестве {0}", AppRole);

            switch (AppRole)
            {
                case ConnectionRole.CRServer:
                    NetServer.StartServer();
                    break;
                case ConnectionRole.CRClient:
                    NetClient.Start_Client();
                    break;
                default:
                    Console.WriteLine("Программа не работает в данном режиме");
                    return;
            }


            Console.WriteLine("Программа закончила свою работу");
            Console.ReadLine();


        }
    }
}
